<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>函数参数的介绍</title>
    <script>
     /*   function func(num){
            //num是函数内部的一个局部变量，函数外部访问不到
        }
        console.log(num);*/   //caught ReferenceError: num is not defined  报错

        //变量定义好了之后，就不要再通过赋值操作来改变变量的类型
        var str = 1;
        str = "ac";
        str = [];

        /*
         1 JavaScript是弱类型的语言，可以用来保存任何类型的变量
         2 即便你定义的函数只接收两个参数，在调用这个函数时也未必一定要传递两个参数。可以传递一个、三个甚至不传递参数
         3 函数参数只能在函数体内使用

         JavaScript中的函数没有重载的概念
         */
        function func(num1){
            console.log(num1);
        }

        function func(num1,num2){
            console.log(num1+num2);
        }

        func(1);   //NaN
        func(2,3);  //5


        function test(num1,num2){
            console.log(num1);
            console.log(num2);
            console.log(num1+num2);
        }

       // test();        //结果为NaN ,此时，函数内部的命名参数num1和num2的值为：undefined
        //test(1);       //结果为NaN ,num1 = 1,num2 = undefined
        //test(1,2);      //结果为3 ,num1 = 1,num2 = 2
         test(1,2,3);    //结果为3 ,num1 = 1,num2 = 2   此时第三个参数就会被忽略
    </script>
</head>
<body>

</body>
</html>